Skip to content

Conversation

Josmithr
Copy link
Contributor

@Josmithr Josmithr commented Aug 28, 2025

Add package-internal functionality to allow pausing and buffering TreeNode events. This can be used to avoid user event spam in controlled scenarios where we know it is safe to do so. This functionality is not exposed to the user, as the behavior could be dangerous when not considered very carefully.

Updates Table schema operations to pause events during operations that are composed of multiple tree-level edits. This (when combined with transactions) gives the appearance of atomicity for these operations, which is the desired user-facing behavior.

Also mitigates an existing bug that caused 2 tree change events to be emitted when moving a child within or between unhydrated array node(s).

AB#47668

@github-actions github-actions bot added area: dds Issues related to distributed data structures area: dds: tree base: main PRs targeted against main branch labels Aug 28, 2025
@Josmithr Josmithr requested a review from noencke September 2, 2025 16:59
@Josmithr Josmithr changed the title improvement(tree): Buffer events during multi-op table edits fix(tree): Buffer events during multi-op table edits Sep 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: dds: tree area: dds Issues related to distributed data structures base: main PRs targeted against main branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant